package com.woniu.service;

import com.woniu.dto.DepartmentQueryDTO;
import com.woniu.entity.Department;
import com.baomidou.mybatisplus.extension.service.IService;
import com.woniu.util.PageData;
import com.woniu.util.ResponseData;
import org.springframework.web.multipart.MultipartFile;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.util.List;
import java.util.Map;

/**
* @author Apricity
* @description 针对表【department(部门表)】的数据库操作Service
* @createDate 2025-02-13 20:16:59
*/
public interface DepartmentService extends IService<Department> {

    ResponseData<?> queryDepartment(PageData<DepartmentQueryDTO> pageData);

    ResponseData<?> addDepartment(Department department);
    /**
         * @Description 
         查询所有部门 
         * @Return
         * @Author  Ben
         * @Date  Create by 2025/2/17 
         */
    ResponseData<?> queryAllDepartment();

    ResponseData<?> batchUpdateDepartment(List<Department> departments);

    ResponseData<?> batchDeleteDepartment(List<Long> ids);

    ResponseData<?> outDepartmentExcel(HttpServletResponse response, List<Long> ids) throws IOException;

    ResponseData<?> outDepartmentExcelTemplate(HttpServletResponse response) throws IOException;
    ResponseData<?> importDepartmentExcel(MultipartFile file) throws Exception;
}
